package com.server.user;

import java.util.Map;

import com.config.AppReturn;

public interface UserService {
	
	
	/**
	 * 根据openid判断是否有该用户，没有则创建，有则更新name,head
	 * @param openid
	 * @param name
	 * @param head
	 */
	public void createUser(String openid,String name,String head);
	
	/**
	 * 根据ID查询用户
	 * @param id
	 * @return
	 */
	public Map<String, Object> getUserById(String id);
	
	/**
	 * 根据手机号判断是否已经被注册
	 * @param phone
	 * @return
	 */
	public AppReturn checkPhone(String phone);
	
	/**
	 * 根据OPENID查询用户——小程序专用
	 * @param openid
	 * @return
	 */
	public Map<String, Object> getUserByOpenId(String openid);
	
	/**
	 * 更新用户信息
	 * @param user
	 * @return
	 */
	public AppReturn upUser(Map<String, Object> user);
	
	/**
	 * 发短信
	 * @param phone
	 * @return
	 */
	public AppReturn sendSms(String phone);
	
	/**
	 * 处理用户注册
	 * @param phone
	 * @param cardNum
	 * @param pwd
	 * @param shopid
	 * @return
	 */
	public AppReturn doReg(String tjcode,String phone,String smsCode,String pwd,String realname,String openid);
	
	/**
	 * 自动登录,不在走自动登录，用户自动登录直接保存密码，走登录接口
	 * @param userid
	 * @param pwd
	 * @return
	 */
	public AppReturn autoLog(Map<String, Object> user);
	
	/**
	 * 处理用户登录
	 * @param phone
	 * @param logType 登录方式1:手机号+验证码，2：手机号+密码
	 * @param pwd
	 * @param smsCode
	 * @return
	 */
	public AppReturn doLog(String phone,String pwd,String logType,String smsCode,String UUID,String openid,String no);
	
	/**
	 * 将请求插入访问记录
	 * @param toUrl
	 * @param reqpara
	 */
	public void insReqLog(String toUrl,String reqpara);
	
	/**
	 * 查询系统配置参数
	 * @return
	 */
	public Map<String, Object> getSysConfig();
	
	
}
